package jee.boot.module.iexp.dao;

import jee.boot.common.basic.CrudDao;
import jee.boot.entity.task.IexpTask;
import org.apache.ibatis.annotations.Mapper;

/**
 * 导入导出任务Dao
 */
@Mapper
public interface IexpTaskDao extends CrudDao<IexpTask> {
    /**
     * 检查表是否存在
     * @param schema
     * @return
     */
    int existTable(String schema);

    /**
     * 创建表
     */
    void createTable();

    /**
     *  检查并更新乐观锁,保证当前任务的独占性
     * @param task 任务
     * @return
     */
    boolean checkAndUpdateVersionAndStatus(IexpTask task);

    /**
     * 重新执行
     * @param entity
     */
    void reExecute(IexpTask entity);

//    /**
//     * job一次运行的Task
//     * @param entity
//     */
//    List<IexpTask> jobTaskFindList (IexpTask entity);
}
